#ifndef _ASTAR_H_
#define _ASTAR_H_
#include "types.h"

class Map;
class Graph;

// Locate all corners in the map in the interval [start, end] and add them
// to the graph
void getCorners(const Map& map, Graph& graph, int start = 0, int end = -1);

// Perform A* search on the graph
void astar(Graph& graph, const NodeIndex& start, const NodeIndex& goal, Path& path);

#endif // _ASTAR_H_
